<template>
  <div id="list">
    <ul style="padding-left:0px">
      <li
        v-for="item in admins"
        :class="{ active: currentSessionAdmin? item.username === currentSessionAdmin.username:false }"
        v-on:click="changeCurrentSession(item)"
      >
        <!--   :class="[item.id === currentSessionAdmin ? 'active':'']" -->
        <img
          class="avatar"
          :src="item.userFace"
          :alt="item.name"
        >
        <el-badge
          :is-dot="isDot[admin.username+'#'+item.username]"
          class="item"
        >
          <p class="name">{{item.name}}</p>
        </el-badge>

      </li>
    </ul>
  </div>
</template>

<script>
import { mapState } from 'vuex'

export default {
  name: 'list',
  data() {
    return {
      admin: JSON.parse(window.sessionStorage.getItem('admin')),
    }
  },
  computed: mapState([
    'admins',
    'currentSessionAdmin',
    'isDot'
  ]),
  methods: {
    changeCurrentSession: function (currentSessionAdmin) {
      this.$store.commit('changeCurrentSession', currentSessionAdmin)
    }
  }
}
</script>

<style lang="scss" scoped>
#list {
  li {
    padding: 12px 15px;
    border-bottom: 1px solid #292c33;
    cursor: pointer;
    &:hover {
      background-color: rgba(255, 255, 255, 0.03);
    }
  }
  li.active {
    /*注意这个是.不是冒号:*/
    background-color: rgba(255, 255, 255, 0.1);
  }
  .avatar {
    border-radius: 4px;
    width: 30px;
    height: 30px;
    vertical-align: middle;
  }
  .name {
    display: inline-block;
    margin-left: 15px;
    margin-top: 0px;
    margin-bottom: 0px;
  }
}
</style>
